package com.moliku.insurance.model.entity.allianz;

import lombok.Data;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import java.io.Serializable;
import java.util.List;

/**
 * @Description: 京东安联--被保人信息 百万医疗
 * @Author: yws
 * @Date: 2021/3/10 15:35
 */
@Data
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "Insured")
@XmlType(propOrder = {
        "InsuredId",
        "InsuredType",
        "InsuredName",
        "IdType",
        "IdNumber",
        "BirthDate",
        "Mobile",
        "Email",
        "Gender",
        "BeneficialType",
        "OccupationCode",
        "PolicyholderInsuredRelation",
        "SocialSecurityFlag",
        "PlanCode",
})
public class AllianzInsuredMedical implements Serializable {

    private static final long serialVersionUID = -3723997519830538509L;
    /**
     * 被保险人唯一Id，用来确认该保单下被保险人的唯一性
     */
    private String InsuredId;

    /**
     * 被保险人类型(年龄=保单生效日期-出生日期)，具体传哪个类型由计划的费率表决定(对应业务部门提供的产品费率表中的“年龄段”)。
     * 普通的类型如下：
     * 1-成人（大于等于18周岁，小于66周岁）
     * 2-儿童（小于18周岁）
     * 3-老人（大于等于66周岁）
     */
    private String InsuredType;

    /**
     * 被保险人姓名
     */
    private String InsuredName;

    /**
     * 证件类型
     * 1-身份证
     * 2-护照（注：不再支持；如传入，则按中国护照处理）
     * 3-其他（注：不再支持）
     * 10-中国护照
     * 11-外国护照
     * 12-出生证
     * 13-回乡证
     * 16-台胞证
     */
    private String IdType;

    /**
     * 证件号码
     */
    private String IdNumber;

    /**
     * 出生日期 yyyyMMddHHmmss
     */
    private String BirthDate;

    /**
     * 联系电话或手机号码
     */
    private String Mobile;

    /**
     * 电子邮件
     */
    private String Email;

    /**
     * 性别
     * M-男
     * F-女
     * O(Other)-其他
     */
    private String Gender;

    /**
     * 受益类型
     * 1-法定
     * 2-顺位
     * 3-均分
     * 4-比例
     */
    private String BeneficialType;

    /**
     * 被保险人职业代码。条件必传：意外险部分产品计划必传，具体产品计划代码及名称以安联提供的产品说明为准。
     */
    private String OccupationCode;

    /**
     * 与投保人关系。条件必传：部分产品计划必传，具体产品计划代码及名称以安联提供的产品说明为准。
     * 投保人类型为个人时：
     * 01-本人
     * 02-父母
     * 03-子女
     * 04-配偶
     * 05-其他亲属
     * 07-其他
     * 投保人类型为企业时：
     * 06-雇佣关系（注：调整描述）
     * 06 雇员  -- v2.0.4 update
     * 10 雇主  -- v2.0.4 add
     * 07-其他
     */
    private String PolicyholderInsuredRelation;

    /**
     * 是否有社保（甲状腺险必传）
     * Y-有社保
     * N-没有社保
     */
    private String SocialSecurityFlag;

    /**
     * 安联保险计划代码。
     * （多被保人多计划时传）
     */
    private String PlanCode;

}
